package com.mune.common.exception;

/**
 * 错误码和错误信息定义类
 * 1. 错误码使用5位数字
 * 2. 前两位表示业务场景,最后三位表示错误码。例如：10001。10：通用  001：系统未知异常
 * 3. 维护错误码后需要维护错误描述，将它们定义为枚举形式
 * 错误码列表：
 * 10： 通用（参数错误、不能为空、只能为数字等等）
 * 001:参数格式校验
 * 002:短信验证码频率太高
 * 11：商品
 * 12：订单
 * 13：购物车
 * 14：物流
 * 15: 用户
 * 21: 库存
 */
public enum BizCodeEnum {
  UNKNOW_EXCEPTION(10000, "系统未知异常"),
  VALID_EXCEPTION(10001, "参数格式校验失败"),
  PRODUCT_UP_EXCEPTION(11000, "商品上架异常"),
  SMS_CODE_EXCEPTION(10002, "验证码获取频率太高，稍后再试"),
  USER_EXIST_EXCEPTION(150001, "用户已存在"),
  PHONE_EXIST_EXCEPTION(150002, "手机号已存在"),
  NO_STOCK_EXCEPTION(210001,"商品库存不足"),
  LOGINACCT_PASSWORD_INVALID_EXCEPTION(150003, "账号或密码错误");

  private int code;
  private String message;

  BizCodeEnum(int code, String message) {
    this.code = code;
    this.message = message;
  }

  public int getCode() {
    return code;
  }

  public String getMessage() {
    return message;
  }

}
